// =======================================================================
// 
//       Filename:  textelement.hpp
// 
//    Description:  
// 
//        Version:  1.0
//        Created:  20.04.2010 00:40:31
//       Revision:  none
//       Compiler:  g++
// 
//         Author:  Dominik 'domachine' Burgdörfer (-), dominik.burgdoerfer@googlemail.com
//        Company:  -
// 
// =======================================================================


#ifndef  TEXTELEMENT_INC
#define  TEXTELEMENT_INC
#include "element.hpp"
#include "../citerator.hpp"

namespace webplodder {
    namespace Template {
        class File;

        class TextElement : public Element
        {
            public:
                TextElement(File& parent,
                        Type type = TEXT);

                TextElement(File& parent,
                        int begin, int end,
                        Type type = TEXT);

                ~TextElement();

                int begin() const;

                void setBegin(int begin);

                int end() const;

                void setEnd(int end);

                void setInput(CIterator& input);

            protected:
                bool getChar(char& ch);

            private:
                int mBegin;
                int mEnd;
                CIterator* mIterator;
        };
    }
}
#endif   // ----- #ifndef TEXTELEMENT_INC  -----
